package com.hnevc.caoliuye;

import java.util.Arrays;

/**
 * 字符串程序排序设计
 * String类和StringBuffer类的使用
 * 1、通过空格对字符串进行分割，得到一个数组
 * 2、因为得到的数组里面的元素为字符串类型，
 * 将字符串类型转化为整数类型进行升序排序
 * 3、打印输出
 */
public class Example04 {
    public static void main(String[] args) {
        String numStr = "20 -19 -2 100 19 56 75 81";
        int[] numArray = toIntArray(numStr);
        mySortArray(numArray);//排序
        String resultStr = arrayToString(numArray);
        System.out.println(resultStr);
    }
    //将字符串通过空格进行分割 得到字符串数组后转换为整数数组返回
    public static int[] toIntArray(String numStr){
        String[] strArray =numStr.split(" ");
        int[] intArray = new int[strArray.length];
        for (int i = 0; i <intArray.length ; i++) {
            intArray[i] = Integer.parseInt(strArray[i]);
        }
        return intArray;
    }
    //将整数数组按升序进行排序
    public static void mySortArray(int[] numArr){
        Arrays.sort(numArr);
    }
    //打印输出整数数组中的所有元素
    public static String arrayToString(int[] numArr) {
        StringBuffer stringBuffer = new StringBuffer();
        for (int i = 0; i < numArr.length; i++) {
            if (i != numArr.length - 1) {
                stringBuffer.append(numArr[i] + " ");
            } else {
                stringBuffer.append(numArr[i]);
            }
        }
        return stringBuffer.toString();
    }
}
